
#include "BuilderPerson.h"

using namespace npBuilder;


BuilderPerson::BuilderPerson()
{
    this->person = nullptr;
}

BuilderPerson::~BuilderPerson()
{

}

BuilderPerson::BuilderPerson(const BuilderPerson& cpy)
{
    this->person = cpy.person;
}

BuilderPerson& BuilderPerson::operator=(const BuilderPerson& asn)
{
    if (this == &asn)
    {
        return *this;
    }
    else
    {
        this->person = asn.person;
        return *this;
    }
}

BuilderPerson* BuilderPerson::clone() const
{
    return new BuilderPerson(*this);
}

void BuilderPerson::setBuildTarget(Person* person)
{
    this->person = person;
}

void BuilderPerson::startToBuild()
{
    this->person->buildHead();
    this->person->buildBody();
    this->person->buildHand();
    this->person->buildFoot();
}
